package com.paic.mhis.hcpms.assessment.biz.service;

import java.util.List;
import java.util.Map;

import com.paic.mhis.hcpms.assessment.dto.IndicatorDTO;
import com.paic.pafa.app.biz.service.BusinessServiceException;

/**
 * 
 * Description: 指标体系相关方法
 * 
 * @author: EX-LUANDEBIAO001
 * @version:
 */
public interface PerformanceIndicatorsService {
	/**
	 * 
	 * Description: 查询各指标权重
	 * 
	 * @return
	 * 
	 *         Modification History: Date Version Author Description
	 *         ------------
	 *         ------------------------------------------------------ 2015-3-25
	 *         mhis_hcpms EX-HUANGJUN003 创建
	 */
	List<Map<String, Object>> findFullMark();

	/**
	 * 
	 * Description: 根据前台传入数据修改当前指标体系
	 * 
	 * @param param
	 *            request输入流转换的String
	 * @return 返回信息
	 * @throws BusinessServiceException
	 * 
	 *             Modification History: Date Version Author Description
	 *             --------
	 *             ----------------------------------------------------------
	 *             2015-3-11 mhis_hcpms EX-LUANDEBIAO001 创建
	 */
	Map<String, Object> saveIndicators(String param)
			throws BusinessServiceException;

	/**
	 * 
	 * Description: 根据指标体系编码,查询具体指标
	 * 
	 * @param structureNo
	 * @return
	 * @throws BusinessServiceException
	 * 
	 *             Modification History: Date Version Author Description
	 *             --------
	 *             ----------------------------------------------------------
	 *             2015-3-11 mhis_hcpms EX-LUANDEBIAO001 创建
	 */
	List<IndicatorDTO> findIndicators(String structureNo)
			throws BusinessServiceException;

	/**
	 * 
	 * Description: 查询医院排名
	 * 
	 * @param page
	 * @param pageSize
	 * @param param
	 * @return
	 * @throws BusinessServiceException
	 * 
	 *             Modification History: Date Version Author Description
	 *             --------
	 *             ----------------------------------------------------------
	 *             2015-3-11 mhis_hcpms EX-LUANDEBIAO001 创建
	 */
	Map<String, Object> getRankingInfos(int page, int pageSize,
			Map<String, Object> param) throws BusinessServiceException;

	/**
	 * 
	 * Description: 按等级分类查找对应指标
	 * 
	 * @return 返回对应数据结构
	 * @throws BusinessServiceException
	 * 
	 *             Modification History: Date Version Author Description
	 *             --------
	 *             ----------------------------------------------------------
	 *             2015-3-11 mhis_hcpms EX-LUANDEBIAO001 创建
	 */
	Map<String, Object> findIndicatorsByLevel() throws BusinessServiceException;

	/**
	 * 
	 * Description: 医院排名导出
	 * 
	 * @param param
	 * @return
	 * @throws BusinessServiceException
	 * 
	 *             Modification History: Date Version Author Description
	 *             --------
	 *             ----------------------------------------------------------
	 *             2015-3-11 mhis_hcpms EX-LUANDEBIAO001 创建
	 */
	List<Map<String, Object>> hospitalRankingTable(Map<String, Object> param)
			throws BusinessServiceException;
}
